﻿<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
	<xsl:output method="html" indent="yes"/>
	<xsl:variable name="tableStyle">border-style: solid; border-width: 3px; width: 100%;</xsl:variable>

	<xsl:template match="@* | node()">
		<xsl:element name="table">
			<xsl:attribute name="class" xml:space="preserve">listagem</xsl:attribute>
			<xsl:attribute name="style" xml:space="preserve"><xsl:value-of select="$tableStyle"/></xsl:attribute>
			<xsl:element name="tr">
				<xsl:element name="td">
					Resultados
				</xsl:element>
			</xsl:element>
			<xsl:element name="tr">
				<xsl:element name="td">
					<xsl:element name="table">
						<xsl:attribute name="class" xml:space="preserve">listagem</xsl:attribute>
						<xsl:attribute name="style" xml:space="preserve"><xsl:value-of select="$tableStyle"/></xsl:attribute>
						<xsl:element name="tr">
							<xsl:element name="th">
								<xsl:attribute name="class" xml:space="preserve">celula-nome</xsl:attribute>
								Ativo
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute name="class" xml:space="preserve">celula-nome</xsl:attribute>
								Lote
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Quantidade
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Validade
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Tag RFID
							</xsl:element>
						</xsl:element>
						<xsl:for-each select="EstoqueLocalizacao">
							<xsl:call-template name="EstoqueLocalizacao"></xsl:call-template>
						</xsl:for-each>
					</xsl:element>
				</xsl:element>
			</xsl:element>
		</xsl:element>
	</xsl:template>

	<xsl:template name="EstoqueLocalizacao">
		<xsl:element name="tr">
			<xsl:element name="td">
				<xsl:choose>
					<xsl:when test="@EstoqueLocalizacaoTamanhoCaixa=0">
						<xsl:value-of select="@AtivoNome"/>
					</xsl:when>
					<xsl:otherwise>
						(Caixa tam. <xsl:value-of select="@EstoqueLocalizacaoTamanhoCaixa"/>)
					</xsl:otherwise>
				</xsl:choose>
			</xsl:element>
			<xsl:element name="td">
				<xsl:value-of select="@EstoqueLocalizacaoLote"></xsl:value-of>
			</xsl:element>
			<xsl:element name="td">
				<xsl:value-of select="@EstoqueLocalizacaoQuantidade"></xsl:value-of>
			</xsl:element>
			<xsl:element name="td">
				<xsl:value-of select="@EstoqueLocalizacaoDataValidade"/>
			</xsl:element>
			<xsl:element name="td">
				<xsl:value-of select="@EstoqueLocalizacaoRFID"/>
			</xsl:element>
		</xsl:element>
		<xsl:if test="EstoqueLocalizacaoFilhos">
			<xsl:element name="tr">
				<xsl:element name="td">
					<xsl:attribute name="colspan" xml:space="preserve">5</xsl:attribute>
					<xsl:for-each select="EstoqueLocalizacaoFilhos">
						<xsl:call-template name="EstoqueLocalizacaoFilho">
							<xsl:with-param name="controlId" select="parent::node()/@EstoqueLocalizacaoRFID"></xsl:with-param>
						</xsl:call-template>
					</xsl:for-each>
				</xsl:element>
			</xsl:element>
		</xsl:if>
		<xsl:if test="Movimentacoes">
			<xsl:element name="tr">
				<xsl:element name="td">
					<xsl:attribute name="colspan" xml:space="preserve">5</xsl:attribute>
					<xsl:for-each select="Movimentacoes">
						<xsl:call-template name="Movimentacoes">
							<xsl:with-param name="controlId" select="parent::node()/@EstoqueLocalizacaoRFID"></xsl:with-param>
						</xsl:call-template>
					</xsl:for-each>
				</xsl:element>
			</xsl:element>
		</xsl:if>
	</xsl:template>

	<xsl:template name="EstoqueLocalizacaoFilho">
		<xsl:param name="controlId"></xsl:param>
		<xsl:element name="table">
			<xsl:attribute xml:space="preserve" name="class">listagem</xsl:attribute>
			<xsl:attribute xml:space="preserve" name="style"><xsl:value-of select="$tableStyle"/></xsl:attribute>
			<xsl:element name="tr">
				<xsl:element name="td">
					<xsl:element name="a">
						<xsl:attribute name="href" xml:space="preserve">javascript:void(0);</xsl:attribute>
						<xsl:attribute name="onclick" xml:space="preserve">toogleVisibility('filhos_<xsl:value-of select="$controlId"/>');</xsl:attribute>
						Conteúdo
					</xsl:element>
				</xsl:element>
			</xsl:element>
			<xsl:element name="tr">
				<xsl:attribute name="id" xml:space="preserve">filhos_<xsl:value-of select="$controlId"/></xsl:attribute>
				<xsl:attribute name="style" xml:space="preserve">display:none</xsl:attribute>
				<xsl:element name="td">
					<xsl:element name="table">
						<xsl:attribute xml:space="preserve" name="class">listagem</xsl:attribute>
						<xsl:attribute xml:space="preserve" name="style"><xsl:value-of select="$tableStyle"/></xsl:attribute>
						<xsl:element name="tr">
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Ativo
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Lote
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Quantidade
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Validade
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Tag RFID
							</xsl:element>
						</xsl:element>
						<xsl:for-each select="EstoqueLocalizacao">
							<xsl:call-template name="EstoqueLocalizacao"></xsl:call-template>
						</xsl:for-each>
					</xsl:element>
				</xsl:element>
			</xsl:element>
		</xsl:element>
	</xsl:template>

	<xsl:template name="Movimentacoes">
		<xsl:param name="controlId"></xsl:param>
		<xsl:element name="table">
			<xsl:attribute xml:space="preserve" name="class">listagem</xsl:attribute>
			<xsl:attribute xml:space="preserve" name="style"><xsl:value-of select="$tableStyle"/></xsl:attribute>
			<xsl:element name="tr">
				<xsl:element name="td">
					<xsl:element name="a">
						<xsl:attribute name="href" xml:space="preserve">javascript:void(0);</xsl:attribute>
						<xsl:attribute name="onclick" xml:space="preserve">toogleVisibility('movimentacoes_<xsl:value-of select="$controlId"/>');</xsl:attribute>
						Movimentações
					</xsl:element>
				</xsl:element>
			</xsl:element>
			<xsl:element name="tr">
				<xsl:attribute name="id" xml:space="preserve">movimentacoes_<xsl:value-of select="$controlId"/></xsl:attribute>
				<xsl:attribute name="style" xml:space="preserve">display:none</xsl:attribute>
				<xsl:element name="td">
					<xsl:element name="table">
						<xsl:attribute xml:space="preserve" name="class">listagem</xsl:attribute>
						<xsl:attribute xml:space="preserve" name="style"><xsl:value-of select="$tableStyle"/></xsl:attribute>
						<xsl:element name="tr">
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Data
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Tipo
							</xsl:element>
							<xsl:element name="th">
								<xsl:attribute xml:space="preserve" name="class">celula-nome</xsl:attribute>
								Local Armazenagem
							</xsl:element>
						</xsl:element>
						<xsl:for-each select="Movimentacao">
							<xsl:call-template name="Movimentacao"></xsl:call-template>
						</xsl:for-each>
					</xsl:element>
				</xsl:element>
			</xsl:element>
		</xsl:element>
	</xsl:template>

	<xsl:template name="Movimentacao">
		<xsl:element name="tr">
			<xsl:element name="td">
				<xsl:value-of select="@MovimentacaoData"></xsl:value-of>
			</xsl:element>
			<xsl:element name="td">
				<xsl:choose>
					<xsl:when test="@MovimentacaoTipo='R'">
						Re-leitura
					</xsl:when>
					<xsl:when test="@MovimentacaoTipo='E'">
						Entrada
					</xsl:when>
					<xsl:when test="@MovimentacaoTipo='S'">
						Saída
					</xsl:when>
				</xsl:choose>
			</xsl:element>
			<xsl:element name="td">
				<xsl:value-of select="@LocalArmazenagemNome"/>
			</xsl:element>
		</xsl:element>
	</xsl:template>
</xsl:stylesheet>
